//引入基础地址
import baseUrl from "./baseUrl.js"

//封装http
let http = (options) => {
	return new Promise((resolve, reject) => {
		let header = "";
		if (options.url == "/smslogin" || options.url == "/wxlogin") {
			header = {
				"content-type": "application/json"
			}
		} else {
			header = {
				authorization: uni.getStorageSync("userInfo").token
			}
		}
		uni.request({
			url: baseUrl + "/api" + options.url,
			method: options.method || "GET",
			data: options.data || {},
			header,
			success(res) {
				// 进行全局统一的错误拦截，警告判断等等
				if (res.data.code == 200) {
					resolve(res)
				} else if (res.data.msg == '请设置请求头,并携带验证字符串') {
					//重新跳转到登录
					// #ifdef H5
					uni.reLaunch({
						url: "../login/login"
					})
					// #endif
					// #ifdef MP-WEIXIN
					uni.reLaunch({
						url: "../mine/mine"
					})
					// #endif
				} else if (res.data.msg == '登录已过期或访问权限受限') {
					//重新跳转到登录
					// #ifdef H5
					uni.reLaunch({
						url: "../login/login"
					})
					// #endif
					// #ifdef MP-WEIXIN
					//清除本地用户信息
					uni.removeStorageSync("userInfo")
					uni.reLaunch({
						url: "../mine/mine"
					})
					// #endif
				}
			},
			fail(err) {
				reject(err)
			}
		})
	})
}
//导出封装好的http方法
export default http
